home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 22
/
Aminet 22 (1997)(GTI - Schatztruhe)[!][Dec 1997].iso
/
Aminet
/
biz
/
dopus
/
WolleDOpus1_2.lha
/
wolledopus
/
c
/
SD
< prev
Wrap
Text File
|
1997-10-20
|
3KB
|
130 lines
/*
$VER: SD 0.98 (20.10.1997) © Marco Wollkopf
E-Mail: Marco.Wollkopf@t-online.de
Homepage: http://home.t-online.de/home/Marco.Wollkopf
*/
/*--- Init ---*/
parse upper arg arg1 arg2
OPTIONS RESULTS
OPTIONS FAILAT 30
/*--- Test, ob DOpus ---*/
IF SHOW('P','DOPUS.1') THEN
address DOPUS.1
ELSE DO
SAY "DirectoryOpus nicht gefunden"
EXIT
END
/*--- Parser ---*/
CALL TestArg2
SELECT
WHEN STRIP(arg1) = '?' THEN CALL About
WHEN STRIP(arg1) = "" THEN CALL New
WHEN STRIP(arg1) = NEW THEN CALL New
WHEN STRIP(arg1) = SOURCE THEN CALL Source
WHEN STRIP(arg1) = DEST THEN CALL Dest
OTHERWISE DO
arg2 = arg1
CALL TestArg2
CALL New
END
END
EXIT
/*--- Prüfen, ob arg2, und ob Dir existiert ---*/
TestArg2:
IF arg2 ~= "" THEN DO
dir = strip(strip(arg2,'b',' '),'b','"')
IF exists(dir) THEN DO
IF right(dir,1)=":" THEN NOP
ELSE DO
IF right(dir,1)="/" THEN NOP
ELSE dir=dir||"/"
END
IF open('test',dir||test,'w')=1 THEN DO
CALL close('test')
ADDRESS COMMAND delete '"'||dir||test||'"' quiet
END
dir = '"'||dir||'"'
END
ELSE
CALL Fehler
END
ELSE
dir = '"'||PRAGMA('d')||'"'
RETURN
EXIT
/*---------------------------------------------------*/
/*--- About ---*/
About:
SAY "SD (ScanDir) V0.98, Teil des WolleDOpus Paketes"||D2C(10)||"öffnet einen DOpusLister mit dem Pfad der aktuellen Shell"D2C(10)"Copyright © 1997 Marco Wollkopf"
SAY D2C(10)||"Optionen: NEW/S,SOURCE/S,DEST/S,DIR/F"
SAY D2C(10)||"NEW: es wird ein neuer Lister geöffnet,"
SAY " kann auch weggelassen werden"
SAY "SOURCE: es wird der aktuelle Quellister verwendet,"
SAY " ist kein Quellister vorhanden"
SAY " wird ein neuer Lister geöffnet."
SAY "DEST: es wird der aktuelle Ziellister verwendet,"
SAY " ist kein Ziellister vorhanden"
SAY " wird ein neuer Lister geöffnet."
SAY "DIR: es kann optional ein Verzeichnis angegeben werden"
SAY " das eingelesen werden soll"
SAY D2C(10)||"Hilfe mit ?"
RETURN
EXIT
/*--- neuer Lister ---*/
New:
command scandir new dir
RETURN
EXIT
/*--- Quellister ---*/
Source:
lister query source stem sh.
IF sh.count = 0 THEN
CALL New
ELSE
lister read sh.0 dir
RETURN
EXIT
/*--- Ziellister ---*/
Dest:
lister query dest stem de
IF de.count = 0 THEN
CALL New
ELSE
lister read de.0 dir
RETURN
EXIT
/*--- Fehler ---*/
Fehler:
SAY "es ist ein Fehler aufgetreten"||D2C(10)
CALL About
EXIT
RETURN
EXIT